package negocio;

import java.sql.Date;
import java.sql.Time;

public class Clase implements Comparable<Clase>
{
	private int id;
	private Cursada cursada;
	private Date fecha;
	private Time horaInicio;
	private Time horaFin;
	//public enum Estado {PENDIENTE, FINALIZADA, CANCELADA} // Alguno mas?
	private String estado;
	private Sala sala;
	
	public Clase(Cursada cursada, Date fecha, Time horaInicio, Time horaFin, String estado, Sala sala)
	{
		this.cursada = cursada;
		this.fecha = fecha;
		this.horaInicio = horaInicio;
		this.horaFin = horaFin;
		this.estado = estado;
		this.setSala(sala);
	}
	
	public Clase(int id, Cursada cursada, Date fecha, Time horaInicio, Time horaFin, String estado,Sala sala)
	{
		this.id = id;
		this.cursada = cursada;
		this.fecha = fecha;
		this.horaInicio = horaInicio;
		this.horaFin = horaFin;
		this.estado = estado;
		this.setSala(sala);
	}
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public Cursada getCursada() {
		return cursada;
	}
	public void setCursada(Cursada cursada) {
		this.cursada = cursada;
	}
	public Date getFecha() {
		return fecha;
	}
	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}
	public Time getHoraInicio() {
		return horaInicio;
	}
	public void setHoraInicio(Time horaInicio) {
		this.horaInicio = horaInicio;
	}
	public Time getHoraFin() {
		return horaFin;
	}
	public void setHoraFin(Time horaFin) {
		this.horaFin = horaFin;
	}
	public String getEstado() {
		return estado;
	}
	public void setEstado(String estado) {
		this.estado = estado;
	}
	
	@SuppressWarnings("deprecation")
	public String toString()
	{
		String fecha = this.fecha.getYear() +"-"+ (this.fecha.getMonth()+1)+"-"+this.fecha.getDate();
		return fecha;
	}

	public Sala getSala() {
		return sala;
	}

	public void setSala(Sala sala) {
		this.sala = sala;
	}

	@Override
	public int compareTo(Clase clase) 
	{
		return this.fecha.compareTo(clase.getFecha());
	}
	
}
